<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of con_permiso_usuario
 *
 * @author xps
 */
class con_permiso_usuario extends CI_Controller {
    //put your code here
    
    public function __construct() 
    {
        parent::__construct();
        $this->load->model('mod_permiso_usuario');
    }
    function index()
    {
        
         if ($this->uri->segment(3)!=false)
         {
             $data['id_tipo_usuario'] = $this->uri->segment(3);
             $datos['menu_completo'] = $this->mod_permiso_usuario->extrae_menu_completo($data['id_tipo_usuario']);                    
             $this->load->view('view_permiso_usuario',$datos);
         }else{
            $this->form_validation->set_rules('id_tipo_usuario', 'id_tipo_usuario', 'required');
    	    $this->form_validation->set_message('required', 'debe introducir el campo');
    		
    		if($this->form_validation->run()==FALSE){
                    
                    $this->load->view('view_permiso_usuario');
                }else{
                    $data['id_tipo_usuario'] = $this->input->post('id_tipo_usuario');
                    //menu con sus respectivos permisos por usuario
                    $datos['id_tipo_usuario'] = $this->input->post('id_tipo_usuario');
                    $datos['menu_completo'] = $this->mod_permiso_usuario->extrae_menu_completo($data['id_tipo_usuario']);                    
                    $this->load->view('view_permiso_usuario',$datos);
                }            
         }
    }
    function editar()
    {
        $id_tipo_usuario = $this->input->post('id_tipo_usuario');
        
        //recupero el menu
        $id_menu = $this->input->post('id_menu');
        $index = $this->input->post('index');
        $editar = $this->input->post('editar');
        $nuevo = $this->input->post('nuevo');
        $eliminar = $this->input->post('eliminar');
        $imprimir = $this->input->post('imprimir');
        $detalle = $this->input->post('detalle');
        
        $array_menu = array();
                     
        for($i = 0; $i< count($id_menu);$i++)
        {
            if(isset($id_menu[$i])){
                 $array_menu[$i]['id_menu'] = $id_menu[$i];
            }else{
                 $array_menu[$i]['id_menu'] = 0;
            }
            if(isset($index[$i]))
            {
                $array_menu[$i]['index'] = $index[$i];
            }else{
                $array_menu[$i]['index'] = 0;
            }
            
            if(isset($editar[$i]))
            {
                $array_menu[$i]['editar'] = $editar[$i];
            }else{
                $array_menu[$i]['editar'] = 0;
            }
            
            if(isset($nuevo[$i]))
            {
                $array_menu[$i]['nuevo'] = $nuevo[$i];
            }else{
                $array_menu[$i]['nuevo'] = 0;
            }
            
            if(isset($eliminar[$i]))
            {
                $array_menu[$i]['eliminar'] = $eliminar[$i];
            }else{
                $array_menu[$i]['eliminar'] = 0;
            }
            
            if(isset($imprimir[$i]))
            {
                $array_menu[$i]['imprimir'] = $imprimir[$i];
            }else{
                $array_menu[$i]['imprimir'] = 0;
            }
            
            if(isset($detalle[$i]))
            {
                $array_menu[$i]['detalle'] = $detalle[$i];
            }else{
                $array_menu[$i]['detalle'] = 0;
            }                        
        }
        
        $menu_completo  = $this->mod_permiso_usuario->menu_completo_por_permiso($id_tipo_usuario);       
                
        /*  Tomo el primer elemento del menu array y compruebo si esta en el
         *  menu completo si esta update = 1 y updateo sino inserto
         */
        $update = 0;
       
        for($i = 0;$i<count($array_menu);$i++){
           for($k = 0; $k <count($menu_completo);$k++)
           {
               if($array_menu[$i]['id_menu'] == $menu_completo[$k]->id_menu)
               {                  
                  $update = 1;
               }                              
           }
           if($update == 1){               
               $this->mod_permiso_usuario->update_permiso_usuario($id_tipo_usuario,$array_menu[$i]);
               $update = 0;
           }else{
               $this->mod_permiso_usuario->insert_permiso_usuario($id_tipo_usuario,$array_menu[$i]);
           }
           
          
        }
           $datos['menu_completo'] = $this->mod_permiso_usuario->extrae_menu_completo($id_tipo_usuario);                    
           //$this->load->view('view_permiso_usuario',$datos);
           redirect('con_permiso_usuario/index/'.$id_tipo_usuario);
    }
}
?>
